package com.uwlaser.domain;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

/**
 * 统一处理类
 */
@Data
public class DataRequestParam<T> {

    /**
     * 请求参数
     */
    @ApiModelProperty("当前请求参数")
    private T param;

    @ApiModelProperty("当前产品序列号")
    private String productSn;

    @ApiModelProperty("当前操作人")
    private String operator;
    /**
     * 工厂模型相关
     */
    @ApiModelProperty("当前设备信息")
    private DeviceMain deviceMain;

    @ApiModelProperty("当前工位信息")
    private FactoryModel factoryStation;

    @ApiModelProperty("当前工段信息")
    private FactoryModel factorySection;

    @ApiModelProperty("当前产线信息")
    private FactoryModel factoryLine;

    @ApiModelProperty("当前车间信息")
    private FactoryModel factoryWorkshop;

    @ApiModelProperty("当前工厂信息")
    private FactoryModel factory;

    /**
     * 工艺相关
     */
    @ApiModelProperty("当前工序信息")
    private CraftOperation craftOperation;
    @ApiModelProperty("当前工艺路线信息")
    private CraftPath craftPath;

    /**
     * 工单相关
     */
    @ApiModelProperty("当前订单信息")
    private DataPlanOrder planOrder;

    @ApiModelProperty("当前工单信息")
    private DataPlanWorkOrder planWorkOrder;


    /**
     * 产品相关
     */
    @ApiModelProperty("当前产品类型")
    private ProductType productType;

    @ApiModelProperty("当前产品型号")
    private ProductModel productModel;

    @ApiModelProperty("当前产品主表数据")
    private DataMain dataMain;

    @ApiModelProperty("临时编码标识")
    private String tempSign;

}
